Testing the Satisfiability of Z Formal Specifications by Using Prolog
نویسندگان
چکیده
Formal specifications are now being used as a basis for communication, design, testing and verification of a software product. For a formal specification to be used effectively, it must be valid, which means that it must be well-formed and reflects the user requirements. The normal technique for validating a formal specification is by using formal reasoning. However, the use of formal reasoning is extremely tedious and time consuming. In this paper we explore alternative techniques for validating a Z formal specification. In particular, we consider the concept of satisfiability as a weaker alternative to validity and discuss how testing can be used to check the satisfiability of a Z formal specification.
منابع مشابه
Animation of Z Specifications by Translation to Prolog
Formal methods of software development rely on the validation of the specification of the software. Such specification is normally expressed in a formal language such as Z. However, in order to be validated the Z specification must be tested, and to achieve this it has to be transformed into a form that can be executed or animated. Prolog was one of the languages used for animation of Z specifi...
متن کاملLogic + control: An example
We present a Prolog program – the SAT solver of Howe and King – as a (pure) logic program with added control. The control consists of a selection rule (delays of Prolog) and pruning the search space. We construct the logic program together with proofs of its correctness and completeness, with respect to a formal specification. Correctness and termination of the logic program are inherited by th...
متن کاملAn Animation Tool for Supporting Specification-Based Software Architectures
One of the important issues in supporting specification-based software architectures is how to verify that formal specifications of a software system satisfy liveness, safety and timing constraints, and are consistent and complete with regard to user requirements. Animation has been proposed as one of the techniques for achieving this goal. This article presents a practical approach and a tool ...
متن کاملProbe: a formal specification-based testing system
The aim of software verification is determining how well the software conforms to its specification. Testing is the most popular method of software verification. For software testing to be done effectively, there is a need to select proper test cases such that all aspects of the software can be tested. This paper describes a new approach for specification-based testing. The formal specification...
متن کاملSpecSatisfiabilityTool: A tool for testing the satisfiability of specifications on XML documents
We present a prototype that implements a set of logical rules to prove the satisfiability for a class of specifications on XML documents. Specifications are given by means of constrains built on Boolean XPath patterns. The main goal of this tool is to test whether a given specification is satisfiable or not, and justify the decision showing the execution history. It can also be used to test whe...
متن کامل